.bank-container {
  display: flex;
  margin-bottom: 3%;

  .left-list {
    width: 75%;
    margin-right: 15px;
    background: #fff;
    border-radius: 10px;

    .filter-select {
      background: #ffffff;
      border-top-left-radius: 10px;
      border-top-right-radius: 10px;
      padding: 10px 0px 20px 0px;

      .items {
        padding: 0 20px 0 70px;
        position: relative;
        overflow: hidden;

        .category {
          position: absolute;
          font-size: 14px;
          color: #333333;
          left: 20px;
          top: 22px;
        }

        .item {
          display: inline-flex;
          align-items: center;
          padding: 5px 5px;
          background: #ffffff;
          border-radius: 20px;
          margin: 10px 5px 0 5px;
          cursor: pointer;

          & span:first-child {
            display: inline-block;
            max-width: 200px;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            font-size: 14px;
            color: #333333;
            -ms-user-select: none;
            user-select: none;
          }

          & span:last-child {
            background: #f5f5f5;
            border-radius: 10px;
            padding: 0px 4px;
            margin-left: 8px;
            color: #999999;
          }

          .action___m_eZE {
            cursor: pointer;
            position: absolute;
            z-index: 10;
            right: 0;
            bottom: -2px;
            font-size: 14px;
            color: #656f87;
            margin-right: 10px;

            i {
              display: inline-block;
              font-size: 10px;
              color: #656f87;
              margin-left: 6px;
            }
          }
        }

        .active {
          display: inline-flex;
          align-items: center;
          padding: 5px 5px;
          background: #ffffff;
          border-radius: 20px;
          margin: 10px 5px 0 5px;

          span {
            &:first-child {
              color: #0152d9 !important;
            }

            &:last-child {
              display: inline-flex;
              align-items: center;
              padding: 5px 5px;
              border-radius: 20px;
              margin-left: 10px;
              cursor: pointer;
              color: #0152d9;
              background: #eef7ff;
            }
          }
        }

        .action {
          cursor: pointer;
          position: absolute;
          z-index: 10;
          right: 0;
          bottom: -2px;
          font-size: 14px;
          color: #656f87;
          margin-right: 10px;
        }
      }
    }

    .filter-input {
      display: flex;
      margin: 0 20px;
      padding: 15px 0;
      border-bottom: 1px #dcdfe6 solid;

      .select-box {
        flex: 1;
      }
    }

    .title {
      display: flex;
      justify-content: space-between;
      margin-top: 25px;
      font-size: 16px;
      padding: 0 4px;

      .title-left {
        flex: 1;
        text-align: center;
      }

      .title-right {
        display: flex;
        width: 310px;
        margin-right: 98px;
        font-size: 16px;

        .title-item {
          display: inline-flex;
          flex: 1;
          align-items: center;
          text-align: center;
          cursor: pointer;

          img {
            width: 14px;
            height: 14px;
            margin-left: 5px;
          }
        }
      }
    }
    .problem-item-wrapper {
      padding: 16px 20px;
      font-size: 16px;
      background-color: #fff;

      .problem {
        display: flex;
        align-items: center;
        justify-content: space-between;

        .problem-left {
          display: flex;
          flex: 1;

          .problem-title {
            display: inline-flex;
            align-items: center;
            justify-content: center;

            img {
              margin-right: 18px;
            }

            .check-flag {
              display: inline-block;
              padding: 0 5px;
              width: 30px;
            }

            .name {
              cursor: pointer;
              flex-shrink: 0;
              max-width: 285px;
              overflow: hidden;
              font-size: 16px;
              font-weight: 500;
              text-overflow: ellipsis;
              word-break: keep-all;
              white-space: nowrap;
              color: #000;
            }
          }
        }

        .problem-right {
          display: flex;
          width: 340px;

          .problem-level {
            flex: 1;
            text-align: center;

            .meta-level {
              cursor: pointer;
              box-sizing: border-box;
              padding: 2px 8px;
              font-size: 12px;
              color: #fff;
              border-radius: 10px;
            }

            .simple {
              background: #08bf91;
            }

            .middle {
              background: #faac2b;
            }

            .hard {
              background: #f64600;
            }
          }

          .problem-passing {
            flex: 1;
            text-align: center;
          }

          .problem-challenges {
            flex: 1;
            text-align: center;
          }
        }

        .wrapper {
          width: 92px;
          display: flex;
          flex-direction: column;
          flex-wrap: wrap;
          align-items: center;
          justify-content: flex-end;
          font-size: 14px;
          color: #fff;
          border-radius: 4px;

          .btn-primary {
            background: linear-gradient(318deg, #2d58ff, #3c8dff);
            border-radius: 15px;
            cursor: pointer;
            color: #fff;
            border-color: #2e7eee;
            box-shadow: none !important;
            outline: none !important;
            padding: 0.25rem 0.5rem;
            border: none;
            font-size: 0.875rem;
            line-height: 1.5;
          }
        }
      }

      .problem-tags {
        width: calc(100% - 97px);
        margin-left: 42px;
        position: relative;
        top: 5px;
        display: flex;
        flex-wrap: wrap;
        font-size: 0;

        .tag {
          box-sizing: border-box;
          display: inline-block;
          max-width: 100px;
          padding: 2px 8px;
          overflow: hidden;
          font-size: 12px;
          color: #2e7eee;
          background: rgba(46, 126, 238, 0.1);
          border-radius: 4px;
          text-overflow: ellipsis;
          word-break: keep-all;
          white-space: nowrap;
          margin-right: 10px;
          margin-bottom: 5px;
        }
      }
    }
  }

  .right-rank {
    width: 25%;

    .panel-wrap {
      width: 100%;
      height: 100%;
      background: #fff;
      border-radius: 10px;
      background-size: 100% auto;
      background-repeat: no-repeat;
      background-image: url(https://static.shiyanlou.com/lanqiao/frontend/dist/img/small-person-score.53465e9.png);

      .top {
        display: flex;
        justify-content: space-between;
        box-sizing: border-box;
        padding: 20px 20px 0;
        width: 100%;

        .rank-name {
          font-size: 24px;
          font-weight: 500;
          color: #fff;
        }

        .tabs-wrap {
          display: flex;
          align-items: center;

          .tab {
            box-sizing: border-box;
            width: 48px;
            height: 31px;
            line-height: 31px;
            font-size: 14px;
            font-weight: 400;
            color: #fff;
            text-align: center;
            border: 1px solid #fff;
            cursor: pointer;
          }

          .first {
            border-radius: 100px 0 0 100px;
            border-right: none;
          }

          .last {
            border-radius: 0 100px 100px 0;
          }

          .tab-select {
            background: rgb(255, 255, 255);
            font-weight: 550;
            color: rgb(46, 126, 238);
          }
        }
      }

      .middle {
        box-sizing: border-box;
        width: 100%;
        padding: 0 20px;
        margin: 18px auto 20px;

        .inner-wrap {
          background: #fff;
          border-radius: 10px;

          .inegral-statistic-wrap {
            display: flex;
            align-items: center;
            justify-content: space-between;
            box-sizing: border-box;
            padding: 20px;
            width: 100%;
            height: 100%;
            background: linear-gradient(
              180deg,
              rgba(62, 81, 255, 0.2),
              rgba(62, 81, 255, 0) 48%,
              hsla(0, 0%, 100%, 0)
            );
            box-shadow: 0 2px 10px 0 rgba(230, 235, 240, 0.5);
            border-radius: 10px;

            .key-value-wrap {
              width: 100%;
              display: flex;
              align-items: center;
              overflow: hidden;

              .key {
                font-size: 16px;
                font-weight: 500;
                color: #000;
                margin-right: 12px;
              }

              .value {
                flex: 1;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
              }
            }

            .rank {
              font-size: 20px;
              font-weight: 600;
              color: #ff5905;
            }
            .first {
              flex: 1;
            }
          }
        }
      }

      .bottom {
        width: 100%;
        padding-bottom: 5px;
        .personal-rank-item {
          display: flex;
          align-items: center;
          justify-content: space-between;
          margin-bottom: 20px;
          padding: 0 18px;

          .left {
            display: flex;
            align-items: center;
            flex: 1;
            overflow: hidden;

            .rank-wrap {
              width: 44px;
              height: 44px;
              display: flex;
              align-items: center;
              justify-content: center;
              margin-right: 12px;

              img {
                max-width: 100%;
              }
            }

            .small {
              width: 28px;
              height: 32px;
            }

            .unit-info-wrap {
              display: flex;
              align-items: center;
              flex: 1;
              overflow: hidden;

              .avatar {
                width: 40px;
                height: 40px;
                margin-right: 10px;
              }

              .unit {
                flex: 1;
                overflow: hidden;

                .name {
                  text-overflow: ellipsis;
                  overflow: hidden;
                  white-space: nowrap;
                  font-size: 16px;
                  font-weight: 500;
                  color: #333;
                }

                .extra {
                  font-size: 14px;
                  font-weight: 400;
                  color: #666;
                  margin-top: 6px;
                  text-overflow: ellipsis;
                  overflow: hidden;
                  white-space: nowrap;
                }
              }
            }
          }

          .score {
            font-size: 16px;
            font-weight: 500;
            color: #3e51ff;
          }
        }
      }
    }
  }
}
